package com.cskaoyan.javase._2inner._2static._2classload;

/**
 * 静态内部类和外围类相互独立,类加载创建对象,都不会互相影响.
 * 使用静态内部类相对于使用成员内部类,更加灵活
 * 不需要考虑内部类和外围类具有依赖关系
 * 使用静态内部类就是单纯的封装隐藏类,所以静态内部类会更常见一点.
 *
 * @since 09:48
 * @author wuguidong@cskaoyan.onaliyun.com
 */
public class Demo {
    public static void main(String[] args) {
        // 在外部类当中创建静态内部类对象
        EnclosedClazz.NestedClazz nc = new EnclosedClazz.NestedClazz();
    }
}

class NestedClazz {

}

class A {
}

class EnclosedClazz {
    class A {
    }

    static {
        System.out.println("EnclosedClazz类初始化了!");
    }

    static class NestedClazz {
        static {
            System.out.println("NestedClazz类类初始化了!");
        }
    }
}
